Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Node / ReticulumProjects / MeshChatX.git / files / Dockerfile.hardened

Displaying Raw • Download


Dockerfile.hardened 4bd787ccd70a459a02eececca3f942f0e64ec4ce (4bd787cc) Text, 4.20 KB


Te6edf3ARG Te6edf3NODE_IMAGETb4b4b4=Te6edf3cgrTb4b4b4.Te6edf3devTff7b72/Te6edf3chainguardTff7b72/Te6edf3nodeTb4b4b4:Te6edf3latestTff7b72-Te6edf3dev
Te6edf3ARG Te6edf3PYTHON_BUILD_IMAGETb4b4b4=Te6edf3cgrTb4b4b4.Te6edf3devTff7b72/Te6edf3chainguardTff7b72/Te6edf3pythonTb4b4b4:Te6edf3latestTff7b72-Te6edf3dev
Te6edf3ARG Te6edf3PYTHON_RUNTIME_IMAGETb4b4b4=Te6edf3cgrTb4b4b4.Te6edf3devTff7b72/Te6edf3chainguardTff7b72/Te6edf3pythonTb4b4b4:Te6edf3latestTff7b72-Te6edf3dev

Te6edf3FROM Tff7b72--Te6edf3platformTb4b4b4=Te6edf3linuxTff7b72/Te6edf3amd64 $Tb4b4b4{Te6edf3NODE_IMAGETb4b4b4} Te6edf3AS Te6edf3buildTff7b72-Te6edf3frontend
Te6edf3USER Te6edf3root
Te6edf3WORKDIR Tff7b72/Te6edf3src
Te6edf3RUN Te6edf3apk Te6edf3add Tff7b72--Te6edf3noTff7b72-Te6edf3cache Te6edf3git Te6edf3python3 Te6edf3go
Te6edf3COPY Tff7b72packageTb4b4b4.Te6edf3json Te6edf3pnpmTff7b72-Te6edf3lockTb4b4b4.Te6edf3yaml Te6edf3pnpmTff7b72-Te6edf3workspaceTb4b4b4.Te6edf3yaml Te6edf3viteTb4b4b4.Te6edf3configTb4b4b4.Te6edf3js Tb4b4b4.Tff7b72/
Te6edf3COPY Te6edf3patches Tb4b4b4.Tff7b72/Te6edf3patches
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3fetchTff7b72-Te6edf3micronTff7b72-Te6edf3wasmTb4b4b4.Te6edf3mjs Te6edf3scriptsTff7b72/Te6edf3fetchTff7b72-Te6edf3micronTff7b72-Te6edf3wasmTb4b4b4.Te6edf3mjs
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3micronTff7b72-Te6edf3wasmTff7b72-Te6edf3resolveTff7b72-Te6edf3bundledTb4b4b4.Te6edf3mjs Te6edf3scriptsTff7b72/Te6edf3micronTff7b72-Te6edf3wasmTff7b72-Te6edf3resolveTff7b72-Te6edf3bundledTb4b4b4.Te6edf3mjs
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3micronTff7b72-Te6edf3parserTff7b72-Te6edf3goTff7b72-Te6edf3versionTb4b4b4.Te6edf3mjs Te6edf3scriptsTff7b72/Te6edf3micronTff7b72-Te6edf3parserTff7b72-Te6edf3goTff7b72-Te6edf3versionTb4b4b4.Te6edf3mjs
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3buildTff7b72-Te6edf3visualiserTff7b72-Te6edf3wasmTb4b4b4.Te6edf3mjs Te6edf3scriptsTff7b72/Te6edf3buildTff7b72-Te6edf3visualiserTff7b72-Te6edf3wasmTb4b4b4.Te6edf3mjs
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3syncTff7b72-Te6edf3meshchatxTff7b72-Te6edf3docsTb4b4b4.Te6edf3js Te6edf3scriptsTff7b72/Te6edf3syncTff7b72-Te6edf3meshchatxTff7b72-Te6edf3docsTb4b4b4.Te6edf3js
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3pip_rns_remotesTb4b4b4.Te6edf3py Te6edf3scriptsTff7b72/Te6edf3pip_rns_remotesTb4b4b4.Te6edf3py
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3buildTff7b72/Te6edf3fetch_reticulum_manualTb4b4b4.Te6edf3py Te6edf3scriptsTff7b72/Te6edf3buildTff7b72/Te6edf3fetch_reticulum_manualTb4b4b4.Te6edf3py
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3buildTff7b72/Te6edf3generate_service_workerTb4b4b4.Te6edf3mjs Te6edf3scriptsTff7b72/Te6edf3buildTff7b72/Te6edf3generate_service_workerTb4b4b4.Te6edf3mjs
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3buildTff7b72-Te6edf3frontendTb4b4b4.Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3buildTff7b72-Te6edf3frontendTb4b4b4.Te6edf3sh
Te6edf3COPY Te6edf3docs Tb4b4b4.Tff7b72/Te6edf3docs
Te6edf3COPY Te6edf3visualiserTff7b72-Te6edf3wasm Tb4b4b4.Tff7b72/Te6edf3visualiserTff7b72-Te6edf3wasm
Te6edf3COPY Te6edf3meshchatxTff7b72/Te6edf3srcTff7b72/Te6edf3frontend Tb4b4b4.Tff7b72/Te6edf3meshchatxTff7b72/Te6edf3srcTff7b72/Te6edf3frontend
Te6edf3ENV Te6edf3GOCACHETb4b4b4=Tff7b72/Te6edf3tmpTff7b72/Te6edf3goTff7b72-Te6edf3cache
Te6edf3ENV Te6edf3GOTMPDIRTb4b4b4=Tff7b72/Te6edf3tmpTff7b72/Te6edf3goTff7b72-Te6edf3tmp
Te6edf3RUN Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3buildTff7b72-Te6edf3frontendTb4b4b4.Te6edf3sh

Te6edf3FROM $Tb4b4b4{Te6edf3PYTHON_BUILD_IMAGETb4b4b4} Te6edf3AS Te6edf3builder
Te6edf3USER Te6edf3root
Te6edf3WORKDIR Tff7b72/Te6edf3build
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3builderTff7b72-Te6edf3apkTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3builderTff7b72-Te6edf3apkTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh
Te6edf3RUN Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3builderTff7b72-Te6edf3apkTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh
Te6edf3RUN Te6edf3pip Te6edf3install Tff7b72--Te6edf3noTff7b72-Te6edf3cacheTff7b72-Te6edf3dir Tff7b72--Te6edf3upgrade Ta5d6ff"pip>=26.0" Te6edf3uv Te6edf3setuptools Te6edf3wheel Ta5d6ff"jaraco.context>=6.1.0"
Te6edf3RUN Te6edf3python Tff7b72-Te6edf3m Te6edf3venv Tff7b72/Te6edf3optTff7b72/Te6edf3venv
Te6edf3ENV Te6edf3PATHTb4b4b4=Ta5d6ff"/opt/venv/bin:$PATH"
Te6edf3ENV Te6edf3UV_PROJECT_ENVIRONMENTTb4b4b4=Tff7b72/Te6edf3optTff7b72/Te6edf3venv
Te6edf3RUN Te6edf3pip Te6edf3install Tff7b72--Te6edf3noTff7b72-Te6edf3cacheTff7b72-Te6edf3dir Tff7b72--Te6edf3upgrade Ta5d6ff"pip>=26.0" Ta5d6ff"setuptools" Ta5d6ff"jaraco.context>=6.1.0"
Te6edf3COPY Te6edf3pyprojectTb4b4b4.Te6edf3toml Te6edf3uvTb4b4b4.Te6edf3lock Te6edf3READMETb4b4b4.Te6edf3md Te6edf3CHANGELOGTb4b4b4.Te6edf3md Tb4b4b4.Tff7b72/
Te6edf3COPY Te6edf3logo Tb4b4b4.Tff7b72/Te6edf3logo
Te6edf3COPY Te6edf3vendor Tb4b4b4.Tff7b72/Te6edf3vendor
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3patch_lxst_pyogg_ogg_ctypesTb4b4b4.Te6edf3py Tb4b4b4.Tff7b72/Te6edf3scriptsTff7b72/Te6edf3patch_lxst_pyogg_ogg_ctypesTb4b4b4.Te6edf3py
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3patch_lxst_codec2_optionalTb4b4b4.Te6edf3py Tb4b4b4.Tff7b72/Te6edf3scriptsTff7b72/Te6edf3patch_lxst_codec2_optionalTb4b4b4.Te6edf3py
Te6edf3COPY Te6edf3meshchatxTff7b72/Te6edf3srcTff7b72/Te6edf3backendTff7b72/Te6edf3lxst_pyogg_ctypes_compatTb4b4b4.Te6edf3py Tb4b4b4.Tff7b72/Te6edf3meshchatxTff7b72/Te6edf3srcTff7b72/Te6edf3backendTff7b72/Te6edf3lxst_pyogg_ctypes_compatTb4b4b4.Te6edf3py
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3prepareTff7b72-Te6edf3venvTb4b4b4.Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3prepareTff7b72-Te6edf3venvTb4b4b4.Te6edf3sh
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3buildTff7b72-Te6edf3appTff7b72-Te6edf3overlayTb4b4b4.Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3buildTff7b72-Te6edf3appTff7b72-Te6edf3overlayTb4b4b4.Te6edf3sh
Te6edf3ENV Te6edf3MESHCHATX_DOCKER_SKIP_MUSL_FILTERLIBTb4b4b4=T79c0ff1
Te6edf3RUN Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3prepareTff7b72-Te6edf3venvTb4b4b4.Te6edf3sh
Te6edf3COPY Te6edf3meshchatx Tb4b4b4.Tff7b72/Te6edf3meshchatx
Te6edf3COPY Tff7b72--Te6edf3fromTb4b4b4=Te6edf3buildTff7b72-Te6edf3frontend Tff7b72/Te6edf3srcTff7b72/Te6edf3meshchatxTff7b72/Te6edf3public Tb4b4b4.Tff7b72/Te6edf3meshchatxTff7b72/Te6edf3public
Te6edf3RUN Te6edf3sh Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3buildTff7b72-Te6edf3appTff7b72-Te6edf3overlayTb4b4b4.Te6edf3sh

Te6edf3FROM $Tb4b4b4{Te6edf3PYTHON_RUNTIME_IMAGETb4b4b4}
Te6edf3USER Te6edf3root
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3dockerTff7b72/Te6edf3runtimeTff7b72-Te6edf3setupTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh Tff7b72/Te6edf3tmpTff7b72/Te6edf3runtimeTff7b72-Te6edf3setupTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh
Te6edf3RUN Te6edf3sh Tff7b72/Te6edf3tmpTff7b72/Te6edf3runtimeTff7b72-Te6edf3setupTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh Tff7b72&& Te6edf3rm Tff7b72/Te6edf3tmpTff7b72/Te6edf3runtimeTff7b72-Te6edf3setupTff7b72-Te6edf3chainguardTb4b4b4.Te6edf3sh
Te6edf3COPY Tff7b72--Te6edf3fromTb4b4b4=Te6edf3builder Tff7b72--Te6edf3chownTb4b4b4=Te6edf3meshchatTb4b4b4:Te6edf3meshchat Tff7b72/Te6edf3optTff7b72/Te6edf3venvTff7b72-Te6edf3deps Tff7b72/Te6edf3optTff7b72/Te6edf3venv
Te6edf3COPY Tff7b72--Te6edf3fromTb4b4b4=Te6edf3builder Tff7b72--Te6edf3chownTb4b4b4=Te6edf3meshchatTb4b4b4:Te6edf3meshchat Tff7b72/Te6edf3optTff7b72/Te6edf3appTff7b72-Te6edf3overlayTff7b72/ Tff7b72/Te6edf3optTff7b72/Te6edf3venvTff7b72/
Te6edf3COPY Te6edf3scriptsTff7b72/Te6edf3docker_entrypoint_chainguardTb4b4b4.Te6edf3py Tff7b72/Te6edf3dockerTff7b72-Te6edf3entrypointTb4b4b4.Te6edf3py

Te6edf3ARG Te6edf3OCI_REVISIONTb4b4b4=Ta5d6ff""
Te6edf3ARG Te6edf3OCI_VERSIONTb4b4b4=Ta5d6ff""
Te6edf3ARG Te6edf3OCI_CREATEDTb4b4b4=Ta5d6ff""

Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3sourceTb4b4b4=Ta5d6ff"https://github.com/Quad4-Software/MeshChatX"
Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3descriptionTb4b4b4=Ta5d6ff"MeshChatX is an all-in-one Reticulum client."
Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3licensesTb4b4b4=Ta5d6ff"MIT AND 0BSD"
Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3authorsTb4b4b4=Ta5d6ff"Quad4"
Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3revisionTb4b4b4=Ta5d6ff"${OCI_REVISION}"
Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3versionTb4b4b4=Ta5d6ff"${OCI_VERSION}"
Te6edf3LABEL Te6edf3orgTb4b4b4.Te6edf3opencontainersTb4b4b4.Te6edf3imageTb4b4b4.Te6edf3createdTb4b4b4=Ta5d6ff"${OCI_CREATED}"

Te6edf3ENV Te6edf3PATHTb4b4b4=Ta5d6ff"/opt/venv/bin:$PATH"
Te6edf3ENV Te6edf3PYTHONUNBUFFEREDTb4b4b4=T79c0ff1
Te6edf3ENV Te6edf3PYTHONDONTWRITEBYTECODETb4b4b4=T79c0ff1
Te6edf3ENV Te6edf3MESHCHAT_FORCE_WEB_AUDIOTb4b4b4=T79c0ff1

Te6edf3USER Te6edf3meshchat

Te6edf3HEALTHCHECK Tff7b72--Te6edf3intervalTb4b4b4=T79c0ff30Te6edf3s Tff7b72--Te6edf3timeoutTb4b4b4=T79c0ff5Te6edf3s Tff7b72--Te6edf3startTff7b72-Te6edf3periodTb4b4b4=T79c0ff90Te6edf3s Tff7b72--Te6edf3retriesTb4b4b4=T79c0ff3 \
Te6edf3CMD Tb4b4b4[Ta5d6ff"python"Tb4b4b4, Ta5d6ff"-c"Tb4b4b4, Ta5d6ff"import ssl, urllib.request; urllib.request.urlopen('https://127.0.0.1:8000/api/v1/status', context=ssl._create_unverified_context())"Tb4b4b4]

Te6edf3ENTRYPOINT Tb4b4b4[Ta5d6ff"/usr/bin/python"Tb4b4b4, Ta5d6ff"/docker-entrypoint.py"Tb4b4b4]
Te6edf3CMD Tb4b4b4[Ta5d6ff"/opt/venv/bin/meshchatx"Tb4b4b4, Ta5d6ff"--host=0.0.0.0"Tb4b4b4, Ta5d6ff"--reticulum-config-dir=/config/.reticulum"Tb4b4b4, Ta5d6ff"--storage-dir=/config/.reticulum-meshchatx"Tb4b4b4, Ta5d6ff"--headless"Tb4b4b4]


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────